package com.carlinfo.usercenter.common.dao;

import java.util.List;
import java.util.Map;

import com.carlinfo.usercenter.common.util.PageInfoUtil;

public interface IBaseDao<T>
{
	/**
	 * 保存一条记录
	 * @param admins  保存的对象(角色),主键放到aadmins的id属性中
	 * @return  返回值的含义:此sql语句执行对数据库影响的条数 
	 */
	int saveDao(T t);
	/**
	 * 更新一条记录
	 * @param admins
	 * @return
	 */
	int updateDao(T t);
	
	/**
	 * 删除一条记录
	 * @param admins
	 * @return
	 */
	int deleteDao(T t);
	
	/**
	 * 查询一条记录
	 * 可以根据id和name来查询
	 * @param condMap  键:名字,值:条件的值
	 * @return  返回结果的一条记录 
	 */
	T findDao(Map<String,Object> condMap);
	
	/**
	 * 查询多条记录
	 * @param PageInfoUtil 分页的工具类 如果为null,表示不分页,不为空,表示分页
	 * @param condMap  键:名字,值:条件的值
	 * @return  返回结果的多条记录 
	 */
	List<T> findCountList(PageInfoUtil pageInfoUtil,Map<String,Object> condMap);
}
